1. Technical Field
This invention relates to traffic control signaling in a fast packet network carrying Internet protocol packets and, more particularly, to the initiation of control signaling upward between layers one and two of a fast packet protocol such as the frame relay protocol and layers three, four or five of an Internet protocol such as the TCP/IP protocol, for example, for data flow control upon receipt of a congestion message or for other purposes.
2. Description of the Related Arts
Referring to FIG. 1, there is shown an overview of a known fast packet network for example, a frame relay or cell relay network, that is carrying packetized traffic between customer locations. By frame is intended a larger data carrying capacity within a single entity than a cell. A cell may comprise one or more data packets, typically, a predetermined number of packets, and a frame is of variable length. The stacks 101 and 102 at the left and right respectively indicate stacks from the known open systems interconnect (OSI) model for describing layers of potential data transmission. Typically, customer applications software 103 runs on, for example, a personal computer workstation, labeled customer computer at location A or CCA and customer applications software 104 runs on the customer computer at location B or CCB. These talk to each other over the fast packet network at various levels of communication. The customer computer may be any intelligent communications terminal device having a controller and memory.
At level 1, there exists, for example, communication over a local area network (LAN) cable between the computer workstation CCA, CCB and the router 105, 106, for example, an ACT Networks SDN-9300 or other router known in the art. The router 105, 106 is connected via the customer""s CSU/DSU interface card 106, 107 to a time division multiplex (TDM) link to a comparable network""s CSU/DSU interface card 108, 109. Typically, the area represents the facilities of an interexchange carrier 112 such as ATandT and are shown in greatly simplified form. At the edge of the IEC network may be a frame relay router 110, 111 which may, for example, comprises an ACT Networks SDM-9400 or SDM-9500 or other router known in the art. In between these edge switches, not shown, may be a satellite uplink, not shown and other intermediate switches.
At layer 3, is the Internet Protocol (IP) layer. The workstation CCA or CCB communicates with the respective router 105, 106. There is no Internet protocol or TCP protocol communication within the fast packet portion of the network 112. At layers 4 and 5, the TCP protocol operates and at layers six and seven, the http.ftp.telnet high level protocol operates. These layers are strictly between work stations CCA and CCB.
Consequently, starting at the 7 layer customer computer CCA or CCB, each stack of protocols can be understood as executing software process on the individual network element depicted. For example, the complete 7-layer stack executing on the customer computer may, in actuality, be, for example, an inetd daemon applications package 103 operating under the UNIX operating system or a comparable package operating under a Microsoft Windows operating system or other system known in the art to provide protocol-based end-to-end communications services. The flow of data in the network is from applications software 103 all the way across the network to applications software 104.
The exchange of protocol-based control information in such a network is peer to peer. For example, if the TCP protocol processes on work station CCA exert flow control on the data stream, then it is exchanging flow control information with its peer TCP process on work station CCB. The same thing is true for IP and http and so on.
The IXC fast packet, for example, frame or cell relay transport is shown in the shaded area of FIG. 1. As already indicated, there could be many switches, or as few as two, switches, namely the depicted edge switches. Transport of fast packet data is at layer 2; the frame relay protocol is between routers and may be I.E.E.E standard 802.3 logical link control (LLC) from the customer router 105, 106 to the work station CCA or CCB. Layer 2 is where control such as data flow control is exerted in a fast packet network, not at a higher layer such as layer 4 as in TCP.
Now referring to FIG. 2, similar reference characters are used to denote similar elements. There is shown a similar figure emphasizing one end, for example, the CCA end of the network of FIG. 1 and with arrows shown designating what happens in the event of traffic congestion in the fast packet network. The X signifies the sensing of congestion at a frame relay switch 201 within a fast packet network 112 such as the ATandT frame relay network. A key at the top of the drawing indicates the typical interface between the IXC and the customer premises equipment, although, in other embodiments, router 105 may comprise a portion of network 112.
Starting at the 7-layer customer computer CCA, outbound traffic traverses the customer router 105 and then may encounter congestion at the second network switch 201. When congestion is sensed in a fast packet network, it is known to originate congestion messages at level 2 in a forward and backwards network direction. The forward congestion message FECN proceeds to the right (forward) and the backwards congestion message proceeds to the left (backward) by setting a bit within the cells or packets known as the FECN and BECN respectively to 1. For example, when congestion is noted, the forward message has FECN equal to 1 and BECN equal to 0. The backward message has FECN equal to 0 but the BECN equal to 1. Following the path of the BECN message, the message is passed by the edge switch 110 to the router 105. The edge switch 110 according to the prior art is typically not programmed at all to react to the BECN message. Presently, the router 105 strips or discards the BECN message. The router 105 is, like the edge switch 110, not presently programmed to react at all to the receipt of a congestion message. The fast packet protocols, including the frame relay protocol, are silent on what the end router is to do with the congestion message or any action to take. Congestion continues and dropped frames, cells and packets occur until the TCP layer finally senses longer acknowledgment times and/or missing packets. The TCP layer, being the first layer that is end-to-end or peer to peer, is the first to react but is a layer that controls the presentation of data to the user at their work station and from the executing computer process 103 to the network. A layer 4 process may be executing on the router 105, but such a process is also typically passive to congestion at layer 2. Enhanced layer 4 control functions are known, for example, firewall (security) functions, but these are not data flow control functions. In the typical case, the layer 4 router process is passive and so is not shown. In summary, it is believed that according to prior art processes, there is no slowing of data presentation to the network at workstation CCA even though network congestion is sensed at a frame relay switch 201 of the network and, eventually, frames (cells) are dropped due to the congestion.
Recently, the United States federal government has enacted legislation to encourage the delivery of Internet services to remote school districts, for example, that may only be reached by satellite. Examples of such school districts may comprise outlying Indian villages in rural Alaska, whose only telecommunications service is via satellite. Satellite introduces absolute delay into any data path due to the length of time it takes to travel to and from a geosynchronous satellite. Flow control becomes more acute because of this delay which would be experienced in a prior art flow control scheme where reliance on layer 4 TCP flow control measures is the only alternative. Data latency can consequently vary but may be typically increased from a latency on the order of a quarter to a half a second to a second to a second and a half. Latencies may typically be on the order of 900 milliseconds, so a fast reacting congestion alleviation scheme is desirable. Digital cell relay networks appear to be an economical and viable approach to providing such services and other data services as well such as telemedicine services at 56 or 64 kbps. It will be advantageous in the art if data flow control were provided in such networks especially those involving satellite links.
The obvious problem for customers of the interexchange carrier or other provider of frame relay services is dropped frames, cells or packets due to delays in implementing any prior art data flow control. It is believed that there exists no method of signaling data flow control between layer 2 and layer 4 from a network element to a network element. More generally, it is believed that there exists no means for establishing a control channel for any purpose upwards in a protocol stack. Consequently, TCP/IP traffic cannot flow smoothly or efficiently over a fast packet network, especially one involving satellite service delivery, according to the state of the art, even though congestion sensing processes are known and congestion messages exist for signaling in a fast packet network.
The problems and related problems of the prior art control processes are solved according to the principles of the present invention by providing for a control signaling channel between layer 2 and layer 4 at a customer router. A control signaling channel may be useful for several purposes. These include: data flow control, data compression control, signaling compression control, segmentation control, switching control and congestion control. For example, for purposes of data flow control at an edge router or switch within the fast packet network that has sensed a traffic congestion. The frame relay edge switch (or router) generates a request of the customer router to open a virtual control channel to the TCP layer on the customer router. As used in the claims and in the present description, a router is intended to encompass either a router as is commonly used in the art or a switch. Once opened, the virtual control channel at the router is operative to throttle the congestion. The present application is associate with the initiation of a control signaling channel between the edge switch and the router, typically on the customer""s premises. In the present application, the signaling path that is opened up will be referred to as an upward pass through packet control channel to conform with the direction of message described, that is, opening a channel up the protocol stack of the router. By convention, an N+2 pass through packet (PTP) channel request message received at a destination switch or router will operate in response to a FECN message to also open an upward pass through the BECN to the customer router, the customer router may be similarly programmed to react and open an upward control channel. Related concurrently filed applications, Ser. Nos. 09/223,053; 09/223,502; and 09/224,204 by the same inventor, Gregory D. Moore, hereafter incorporated by reference herein, discuss the operation of the router and the customer work station in response to the initial request for a signaling channel which is referred to herein as N+2 pass through packet (N+2 PTP) request message.
Once the N+2 PTP channel is open, the control channel may be utilized for many control purposes. These include data flow control, compression control, segmentation control, switching control and other purposes. Following the example of data flow control, the edge switch (or customer router) after setting up the upward control channel may initiate an N+2 fair queue (N+2 FQ) message or control signal to signal the customer work station to xe2x80x9cslow downxe2x80x9d the presentation of packets to the network. The edge switch 110 or the router may generate the fair queue telemetry message which causes slow down of data egress to the edge switch 110 of the network. The established N+2 PTP channel allows the telemetry data to pass to layer 4 of the router 105 where the slowing down can occur. The layer 4 process on the router responds by slowing down the presentation of data to the network originating from layer 4 downward. The layer 4 process on the router then propagates a pass through packet xe2x80x9cslow downxe2x80x9d message to the layer 4 process executing on the customer work station. Frames may be buffered at the work station, the router or the edge switch. Receipt of a BECN causes slowdown of data ingress to the network. Frames inbound to the edge switch 110 from router 105 may be buffered at the edge switch 110. An acknowledgement path is established to signal the layer 2 of the router or the edge switch that the action has been taken by requesting via an Nxe2x88x922 pass through packet message that an Nxe2x88x922 channel be established. In this manner, for example, the edge switch may know that the data presentation rate has been decremented.
Eventually, the congestion message BECN signaled by congested switch 201 to the edge switch 110 will clear; that is, the BECN bit will be restored to 0. This indicates an uncongested network condition and the edge switch generates an N+2 FQ control signal to speed up the presentation of data. The layer 4 process executing on the customer router responds by asking the work station to increase the rate of data presentation to the network. The router may also generate a pass through packet xe2x80x9cspeed upxe2x80x9d message to the layer 4 process executing on the customer work station. In the work station itself, it is suggested that a buffer memory be provided for storage of packets held for presentation to the network during periods of congestion. One possible memory area for such a purpose may be the unused video memory associated with the computer display.
These and other features of the present invention will be discussed in connection with the following drawings.